//
//  UIImage+GL.h
//  GLLibDemo
//
//  Created by huanggulong on 2017/4/19.
//  Copyright © 2017年 历山大亚. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface UIImage (GL)

/*
 * @huanggulong
 *
 * 获取缩率图
 */
- (UIImage *)gl_thumbImageWithSize:(CGSize)size;

/*
 * @huanggulong
 *
 * 获取正方形的缩率图  ,同 gl_thumbImageWithSize
 */
- (UIImage *)gl_thumbImageWithSideLength:(CGFloat)sideLength;

/*
 * @huanggulong
 *
 * 获取图片的主色调
 * deleteWhite  是否把whiteColor排除出去
 */
- (UIColor *)mainColorDeleteWhite:(BOOL)deleteWhite;


/*
 * @huanggulong
 *
 * 矫正图片
 */
- (UIImage *)gl_fixOrientation;

- (UIImage *)gl_scaleImageWithMaxLength:(CGFloat)length;

- (UIImage *)gl_scaleImageWithMinLength:(CGFloat)length;

/**
 * @huanggulong
 *  生成纯色图片
 *
 */
+ (UIImage *)gl_imageWithColor:(UIColor *)color size:(CGSize)size;

/*
 * @huanggulong
 *
 * 有切面的纯色图片
 */
+ (UIImage *)gl_centerRoundRadius:(CGFloat)radius size:(CGSize)size color:(UIColor *)color;

/*
 * @huanggulong
 *
 * 通过颜色生成一个村色的图片9(大小 1 x 1)
 */
+ (UIImage *)gl_imageWithColor:(UIColor *)color;

/*
 * @huanggulong
 *
 * 获取一个纯色的圆
 * color 颜色，size 大小
 *
 */
+(UIImage *)gl_badgeImageWithColor:(UIColor *)color withSize:(CGSize)size;

/*
 * @huanggulong
 *
 * 获取当前屏幕的 图片
 */
+ (UIImage *)gl_currentScreenImage;

/**
 *  画一个渐变图片
 *
 *  @param size 大小
 *  @param beginColor 开始颜色
 *  @param endColor 结束颜色
 *  @param v 是否是垂直 YES 表示垂直, NO 表示水平
 */
+(instancetype)drawGradientImageWithSize:(CGSize)size beginColor:(UIColor *)beginColor endColor:(UIColor *)endColor isVertical:(BOOL)v;

UIImage * drawGradientImageWithSize(CGSize size ,UIColor *beginColor, UIColor *endColor , bool v );

@end
